#ifndef __TIMER0_UTILS_H__
#define __TIMER0_UTILS_H__

void Timer0_Init(unsigned int us, bit isCounterMode);
unsigned int Timer0_Caculate_TH_TL_by_Time(unsigned int Count_us);
unsigned int Timer0_Caculate_TH_TL_by_Frequency(unsigned long Frequency);
void Timer0_reset_TH_TL();
void Timer0_set_TH_TL_Value(unsigned int value);
unsigned int Timer0_getCounter();
float Timer0_getCounter_Time();
void Timer0_setOnTickListener(bit (*Timer0_onTick)());
void Timer0_setOnTickListener_Exact(bit autoResetTH_TL, void (*Timer0_onTick)());
void Timer0_start();
void Timer0_stop();
void Timer0_pause(unsigned char ms);

#endif // !__TIMER0_UTILS_H__